LSP 파일 디버깅(AutoLISP / VS 코드)

AutoLISP(LSP) 파일을 만들고 파일에 코드 문을 추가한 후 Visual Studio Code를 AutoCAD에 연결하고 Visual Studio Code에서 제공하는 많은 디버그 도구를 사용하여 사용자 지정 기능을 단계별로 살펴볼 수 있습니다.

참고:
AutoCAD LT의 AutoLISP 프로그램 디버깅은 Microsoft VS(Visual Studio) 코드용 AutoLISP 확장 프로그램에서 지원되지 않습니다.

전제 조건

튜토리얼의 주제

AutoLISP(LSP) 파일 열기

LSP 파일을 디버깅하기 전에 먼저 디버깅할 LSP 파일을 여는 것이 좋습니다.
현재 편집기 창에서 열린 LSP 파일은 비주얼 스튜디오 코드가 디버깅을 위해 AutoCAD에 처음 연결되면 AutoCAD에 로드됩니다.

다음 단계에서는 비주얼 스튜디오 코드에서 Create-LSP-Tutorial.lsp 파일을 여는 방법을 설명합니다.

  1. 비주얼 스튜디오 코드를 실행합니다.
  2. 비주얼 스튜디오 코드의 활동 표시줄에서 탐색기를 클릭합니다.
  3. 탐색기 보기의 LSP 파일에서 Create-LSP-Tutorial.lsp를 클릭하여 현재 편집자 창을 열고 이 창을 만듭니다.

LSP 파일 폴더가 열리지 않으면 파일 메뉴 > 폴더 열기/열기를 클릭합니다.
그런 다음 LSP 파일 폴더를 찾아 선택합니다.

AutoCAD에 연결하고 디버깅을 위해 AutoLISP(LSP) 파일 로드

AutoLISP 확장이 올바르게 구성되고 현재 편집기 창에 LSP 파일이 열려 있으면 비주얼 스튜디오 코드로 LSP 파일에 저장된 AutoLISP 코드 문을 디버깅할 준비가 됩니다.

    단계에서는 디버깅을 위해 AutoCAD에 비주얼 스튜디오 코드를 연결하는 방법을 설명합니다.
  1. AutoCAD 2025를 실행합니다.
  2. 비주얼 스튜디오 코드로 전환합니다.
  3. 비주얼 스튜디오 코드에서 실행 메뉴 > 디버깅 시작을 클릭합니다.
  4. 구성 메뉴에서 AutoLISP 디버그: 연결을 선택합니다.
  5. 프로세스 메뉴에서 실행 중인 AutoCAD 2025 인스턴스를 나타내는 프로세스를 선택합니다.
    이제 현재 편집기 창에 있는 LSP 파일이 현재 드로잉 창에 로드된 상태에서 AutoCAD에 Visual Studio 코드를 첨부해야 합니다.
    비주얼 스튜디오 코드의 상태 표시줄에 색상이 변경되어 비주얼 스튜디오 코드가 AutoCAD에 성공적으로 연결되었는지 확인할 수 있으며, 파란색에서 주황색으로 변경됩니다.
  6. AutoCAD로 다시 전환합니다.
  7. 명령 프롬프트에서 "hello"를 입력합니다.
  8. 메시지 입력: 프롬프트에서 AutoCAD에서 Hello!를 입력하고 Enter 키를 누릅니다.
    메시지 상자에 "Hello from AutoCAD!"라는 텍스트가 표시됩니다.
  9. 확인을 클릭하여 메시지 상자를 닫습니다.
  10. 명령 프롬프트에서 "drawline" 을 입력합니다. 라인의 두 끝점을 지정합니다.
    지정된 점 사이에 선이 그어져 현재 레이어에 배치됩니다.

문에 중단점 추가

중단점을 사용하면 코드 문이 실행되는 동안 중단할 수 있습니다.
실행이 중단되면 다음을 수행할 수 있습니다.

다음 단계에서는 현재 편집기 창에 열린 Create-LSP-Tutorial.lsp 파일에 중단점을 추가하는 방법을 설명합니다.

라인 중단점
  1. 비주얼 스튜디오 코드로 전환합니다.
  2. 편집기 창 왼쪽 여백에서 3행의 왼쪽을 클릭하여 해당 행의 코드 문 시작 부분에 중단점을 추가합니다. 중단점이 추가되었음을 나타내는 빨간색 원이 나타납니다.
  3. AutoCAD로 전환합니다.
  4. 명령 프롬프트에서 hello를 입력합니다.
    hello 기능이 시작되고 중단점이 있는 라인에서 코드 실행이 중단됩니다.
  5. 비주얼 스튜디오 코드로 다시 전환합니다.
  6. 디버그 도구 모음에서 계속을 클릭하여 실행을 재개합니다.
  7. AutoCAD로 다시 전환하고 메시지 상자에 표시할 텍스트 문자열을 입력합니다.
  8. 확인을 클릭하여 메시지 상자를 닫습니다.
인라인 중단점
  1. 비주얼 스튜디오 코드로 전환합니다.
  2. 편집기 창의 11행에서 열린 괄호 왼쪽을 클릭합니다.
  3. 마우스 오른쪽 버튼을 클릭하고 인라인 브레이크포인트 추가를 선택하여 중첩된 AutoLISP 식을 시작할 때 브레이크포인트를 추가합니다.
  4. AutoCAD로 전환합니다.
  5. 명령 프롬프트에서 드로라인을 입력합니다.
  6. 선의 시작점에 대한 점을 지정합니다.
    첫 번째 지점을 지정한 후에는 인라인 중단점에 의해 실행이 중단됩니다.
  7. 비주얼 스튜디오 코드로 다시 전환합니다.
  8. 디버그 도구 모음에서 계속을 클릭하여 실행을 재개합니다.
  9. AutoCAD로 다시 전환하고 선의 끝점에 대한 지점을 지정합니다.
변수 값 보기 및 진술의 반환 값

중단점으로 인해 실행이 중단되면 변수에 현재 값이 할당되거나 코드 문으로 반환되는 값을 볼 수 있습니다.

이전 섹션에서는 두 가지 다른 중단점을 설정했습니다.
다음 단계에서는 이러한 중단점을 활용하여 코드 실행을 중단하고 변수에 할당된 값을 확인합니다.

  1. AutoCAD로 전환합니다.
  2. 명령 프롬프트에서 드로라인을 입력합니다.
  3. 줄의 시작점을 지정합니다.
  4. 비주얼 스튜디오 코드로 전환합니다.
  5. 위 또는 강조 표시된 문에서 pt1 변수 위로 커서를 이동하여 변수에 할당된 현재 값을 확인합니다.
  6. 디버그 도구 모음에서 단계 시작을 클릭합니다.
  7. AutoCAD로 다시 전환하고 두 번째 지점을 지정합니다.
  8. 비주얼 스튜디오 코드로 다시 전환하고 디버그 도구 모음에서 단계 시작을 다시 클릭합니다.
    pt2 변수에 할당된 값을 봅니다.
    도구 설명에서 현재 할당된 값을 보기 위해 변수 위에 커서를 배치하는 것과 함께 모든 로컬 변수에 할당된 값은 실행 보기의 변수 섹션에서 볼 수 있습니다.
  9. 디버그 도구 모음에서 계속을 클릭하여 실행을 재개합니다.
디버깅하는 동안 AutoLISP(LSP) 파일 다시 로드

사용자 지정 프로그램을 디버깅하는 동안 수정해야 하는 오류가 발생하는 것은 피할 수 없는 일입니다.

다음 단계에서는 Visual Studio 코드로 디버깅하는 동안 드로라인 함수를 변경하고 LSP 파일을 AutoCAD로 다시 로드하는 방법을 설명합니다.

  1. 비주얼 스튜디오 코드로 전환합니다.
  2. Create-LSP-Tutorial.lsp 파일의 편집기 창에서 아래를 굵은 글씨로 변경합니다.
        ;; Draws a line between two points
        (defun c:drawline ( / pt1 pt2 sv_clayer) ;; Declared local variables
        ;; Store the current and create a new layer
        (setq sv_clayer (getvar "clayer"))
        (command "_.-layer" "_m" "Object" "_c" "5" "" "")
        
        ;; Prompt for two points
        (setq pt1 (getpoint "\nSpecify start point of line: ")
        pt2 (getpoint pt1 "\nSpecify end point of line: ")
        )
        
        ;; Check to see if the user specified two points
        (if (and pt1 pt2)
        (command "_.line" pt1 pt2 "")
        (prompt "\nInvalid or missing point(s)")
        )
        
        ;; Restore the previous layer
        (setvar "clayer" sv_clayer)
        
        ;; Exit quietly
        (princ)
        )
  1. 변경 사항을 LSP 파일에 저장합니다.
  2. 디버그 도구 모음에서 재시작을 클릭합니다.
    비주얼 스튜디오 코드는 현재 도면에서 LSP 파일을 로드하기 전에 AutoCAD에서 연결을 끊은 다음 동일한 AutoCAD 프로세스에 다시 연결합니다.
  3. AutoCAD로 다시 전환합니다.
  4. 명령 프롬프트에서 드로라인을 입력합니다.
  5. 선의 첫 번째 및 두 번째 점을 지정합니다.
    이번에는 파란색이 할당된 오브젝트 레이어에 라인을 배치합니다.
디버깅 종료

LSP 파일 디버깅을 완료한 후에는 AutoCAD에서 Visual Studio 코드의 연결을 끊어야 합니다.

    다음 단계에서는 AutoCAD에서 비주얼 스튜디오 코드를 분리하는 방법을 설명합니다.
  1. 비주얼 스튜디오 코드로 전환합니다.
  2. 디버그 도구 모음에서 연결 끊기를 클릭합니다.
    디버그 도구 모음이 닫히고 상태 표시줄이 주황색에서 파란색으로 다시 변경됩니다.